Parameter set and picture header in video coding

ABSTRACT

In a start code based bistream structure for use in video coding, a picture header is used simultaneously with the parameter set in the start code. The picture header is present before the slice header in the same picture. As such, it is possible to allow the presence of at least one sequence parameter set or picture parameter set before the slice header. In a NAL unit parameter set bitstream structure, the picture head NAL unit is present before the slice NAL unit. In either structure, the picture header information must remain unchanged during the decoding of the entire picture, but should change more frequently between pictures as compared to the information in the picture parameter set.

FIELD OF THE INVENTION

The present invention relates generally to video coding and, moreparticularly, to a video bitstream structure.

BACKGROUND OF THE INVENTION

Established video coding standards include ITU-T H.261, ISO/IEC MPEG-1Visual, ITU-T H.262 or ISO/IEC MPEG-2 Visual, ITU-T H.263, ISO/IECMPEG-4 Visual and ITU-T H.264 or ISO/IEC MPEG-4 AVC. H.264/AVC is thework output of a Joint Video Team (JVT) of ITU-T Video Coding ExpertsGroup (VCEG) and ISO/IEC MPEG.

In addition, there are efforts working towards new video codingstandards. One is the development of scalable video coding (SVC)standard in MPEG. The second effort is the development of China videocoding standards organized by the China Audio Visual coding StandardWork Group (AVS). AVS finalized its first video coding specification,AVS 1.0 targeted for SDTV and HDTV applications, in February 2004. Sincethen the focus has moved to mobile video services. The resulting twostandards AVS-M Stage 1 and AVS-M Stage 2 are scheduled to be publishedin December 2004 and April 2006, respectively.

Earlier video coding standards than H.264/AVC have specified a structurefor an elementary bitstream, i.e., a self-containing bitstream thatdecoders can parse. The bitstream consists of several layers, typicallyincluding several of the following: a sequence layer, a picture layer, aslice layer, a macroblock layer, and a block layer. The bitstream foreach layer typically consists of a header and associated data. Eachheader of a slice or higher layer starts with a start code forresynchronization and identification. This structure, which comprises aplurality of routines and sub-routines, is called the start code basedbitstream structure.

The start code based bitstream structure can be depicted in a number oftables as follows (for simplicity, user data and extension data ofsequence-level and picture-level are not included): video_bitstream( ) {  next_start_code( )   do {     sequence_header( )     do {      picture_header( )       do {         slice_header( )        slice_data( )         next_start_code( )       } while( thefollowing is a slice start code )     } while( the following is apicture start code )   } while( the following is not a bitstream endcode ) } sequence_header( ) {   sequence_start_code  sequence_header_parameter#1   sequence_header_parameter#2   ...  next_start_code( ) } picture_header( ) {   picture_start_code  picture_header_parameter#1   picture_header_parameter#2   ...  next_start_code( ) } slice_header( ) {   slice_start_code  slice_header_parameter#1   slice_header_parameter#2   ... }

As can be seen in the above tables, the video_bitstream ( ) routinecontains a plurality of sub-routines such as next_start_code ( ),sequence_header ( ). The table for each of such sub-routines contains aplurality of codes, such as start code and a number of parameters. Thenext_start_code ( ) sub-routine in video_bitstream ( ) routine advancesthe bitstream pointer until the next start code. The sequence end code(not shown) is also a type of start code. The slice_data ( ) sub-routine(not shown as a table) contains the coded video data of a slice exceptthe slice header.

The syntax for H.264/AVC consists of Network Abstraction Layer (NAL)units. The coded video data is organized into NAL units. Each of the NALunits is effectively a packet that contains an integer number of bytes.The first byte of each NAL unit is a header byte that contains anindication of the type of data in the NAL unit, and the remaining bytescontain payload data of the type indicated by the header. The NAL unitstructure definition specifies a generic format for use in bothpacket-oriented and bitstream-oriented transport systems. A series ofNAL units generated by an encoder is referred to as a NAL unit stream. Astream of NAL units does not form an elementary bitstream as such,because there are no start codes in NAL units. Rather, when anelementary bitstream structure is required, NAL units have to be framedwith start codes according to Annex B of the H.264/AVC specification toform an elementary bitstream.

H.264/AVC contains headers at slice layer and below, but it does notinclude picture and sequence headers. Instead, headers are replaced byone or more parameter sets. The parameter set design is used to providefor robust and efficient conveyance of header information. As the lossof a few key bits of header information (such as sequence header orpicture header information) could have a severe negative impact on thedecoding process, this key information could be separated for handlingin a more flexible and specialized manner by using the parameter setdesign.

A parameter set is supposed to contain information that is expected tochange rarely and offers the decoding of a large number of slices. Thereare two types of such parameter sets:

-   -   1) sequence parameter sets, which apply to a series of        consecutive coded video pictures called a coded video sequence;        and    -   2) picture parameter sets, which apply to the decoding of one or        more individual pictures within a coded video sequence.

The sequence and picture parameter-set mechanism decouples thetransmission of infrequently changing information from the transmissionof coded representations of the values of the samples in the videopictures. Each slice contains an identifier that refers to the contentof the relevant picture parameter set and each picture parameter setcontains an identifier that refers to the content of the relevantsequence parameter set. In this manner, a small amount of data (theidentifier) can be used to refer to a larger amount of information (theparameter set) without repeating that information within each slice.

Sequence and picture parameter sets can be sent well ahead of other NALunits that they apply to, and can be repeated to provide robustnessagainst data loss. In some applications, parameter sets may be sentwithin the channel that carries other NAL units (termed “in-band”transmission). In other applications, it can be advantageous to conveythe parameter sets “out-of-band” using a more reliable transportmechanism than the video channel itself.

The bitstream structure of H.264/AVC is called the NAL unit plusparameter set bitstream structure. Note that if H.264/AVC Annex B isused, then the bitstream structure can be considered as a start codeplus parameter set bitstream structure, because the concatenation of thestart code prefix of H.264/AVC Annex B and the first byte of NAL unitcan be defined as a start code.

The NAL unit plus parameter set bitstream structure is a concatenationof a number of NAL units, including the sequence parameter set NAL unit,picture parameter set NAL unit and slice NAL unit, as shown below:sequence_parameter_set_NAL_unit( ) {   nal_unit_header  sequence_parameter_set_id   sequence_parameter#1  sequence_parameter#2   ... } picture_parameter_set_NAL_unit( ) {  nal_unit_header   picture_parameter_set_id   sequence_parameter_set_id  picture_parameter#1   picture_parameter#2   ... } slice_NAL_unit( ) {  nal_unit_header   slice_header( )   slice_data( ) } slice_header( ) {  picture_parameter_set_id   slice_header_parameter#1  slice_header_parameter#2   ... }In the above tables, the nal_unit_header code indicates the type of aNAL unit, among other things.

The start code plus parameter set bitstream structure can be depicted asfollows: video_bitstream( ) {   next_start_code( )   do {     if( thefollowing is a sequence parameter set start code ) {      sequence_parameter_set( )     }     if( the following is a pictureparameter set start code ) {       picture_parameter_set( )     }    if( the following is a slice start code ) {       slice_header( )      slice_data( )       next_start_code( )     }   } while( thefollowing is not a bitstream end code ) } sequence_parameter_set( ) {  sequence_parameter_set_start_code   sequence_parameter_set_id  sequence_parameter#1   sequence_parameter#2   ...   next_start_code( )} picture_parameter_set( ) {   picture_parameter_set_start_code  picture_parameter_set_id   sequence_parameter_set_id  picture_parameter#1   picture_parameter#2   ...   next_start_code( ) }slice_header( ) {   slice_start_code   picture_parameter_set_id  slice_header_parameter#1   slice_header_parameter#2   ... }

In the above tables, the sequence_parameter_set_id code identifies asequence parameter set from any other sequence parameter set. Thepicture_parameter_set_id code identifies a picture parameter set fromany other picture parameter set.

Compared to the start code based structure, the sequence header andpicture header sub-routines are useless in the start code plus parameterset structure. For this reason, the sequence header and picture headersub-routines are excluded from the start code plus parameter setstructure. AVS Video 1.0 has adopted the start code based bitstreamstructure. It is so far not clear whether the start code based bitstreamstructure or the structure with NAL unit plus parameter set will be usedfor AVS-M and MPEG-21 SVC coding standards.

In the start code based bitstream structure, such as the bitstreamstructures in coding standards earlier than H.264/AVC, the parameter settechnique is not used. Thus, infrequently changing information thatremains unchanged has to be repeatedly signaled for each sequence in thesequence header or each picture in the picture header. This is wastefulfrom compression efficiency point of view. Further, without using theparameter set technique, transmission of infrequently changinginformation is difficult to be decoupled from transmission of otherinformation. This makes the coded data more vulnerable to transmissionerrors, as the loss of a few key bits of infrequently changinginformation in the sequence or picture header could have a severenegative impact on the decoding process.

In the NAL unit plus parameter set bitstream structure and the startcode plus parameter set bitsteam structure, there are no pictureheaders. Some information that remains unchanged for a picture has to berepeated in each slice header. This is also wasteful from compressionefficiency point of view. Particularly, for H.264/AVC, as can be seenbelow, such information can take about 2% of the total bit rate in aconservative estimate.

The conventional parameter set based structure in a layer hierarchy(whether plus NAL unit or start code) is shown in FIG. 1.

The parameters in H.264/AVC slice header include those can change fromslice to slice throughout the picture as well as those remain unchangedthroughout the picture. FIG. 2 shows the parameters in the slice headerthat do not change throughout the picture with an estimate of how manybits each parameter uses. The estimation gives the result of 16 bits perslice. For a CIF (Common Intermediate Format) picture, with a slicingmethod of one macroblock row per slice, there are 18 rows per frame.That gives 18×16=288 bits/frame. At 30 frames per second, this becomes8640 bits/sec, which is 2.3% of 384 kbps total bit rate. For mobilevideo telephony, it is reasonable to assume that a QCIF (Quarter CIF)picture has 100 bytes per slice to be conveyed at 64 kbps. This isequivalent to 80 slices/sec. With 16 bits per slice, the transmissionrate is 80×16=1280 bits/sec or 2.0% of the total bit rate at 384 kbps.

SUMMARY OF THE INVENTION

In order to improve the compression efficiency in video coding, thepresent invention provides a picture header in the picture layer beforethe slices. Alternatively, picture header parameters are optionallyincluded in the slice header whether or not the picture header isprovided in the picture layer. Furthermore, picture header parameterscan be included in one or more slices.

In prior art, picture header parameters are included in the sliceheader. In contrast, according to the present invention: picture headerparameters are included

-   -   in a picture header; or    -   in a picture header, and optionally in each of the slice headers        indicated by a flag; or    -   in at least one slice header, and optionally in each of the        other slice headers indicated by a flag.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a conventional parameter set based structure in a videobitstream.

FIG. 2 is a list of parameters in a prior art H.264/AVC slice header.

FIG. 3 shows a parameter set based structure in a video bitstream,according to the present invention.

FIG. 4 is a block diagram showing a video coding system, according tothe present invention.

FIG. 5 is a block diagram showing a video encoder, according to thepresent invention.

FIG. 6 is a block diagram showing a video decoder, according to thepresent invention.

FIG. 7 is a block diagram showing an electronic device having a videocoding system, according to the present invention.

FIG. 8 a shows a parameter set based structure in a video bitstream,according to another embodiment of the present invention.

FIG. 8 b shows a parameter set based structure in a video bitstream,according to yet another embodiment of the present invention.

DETAILED DESCRIPTION OF THE INVENTION

The present invention can be implemented in two embodiments. The firstembodiment is related to the start code based bitstream structure,whereas the second embodiment is related to the NAL unit plus parameterset bitstream.

FIRST EMBODIMENT

The first embodiment of the present invention uses the parameter set andthe picture header sub-routines simultaneously in the start code basedbitstream structure.

To support the two types of parameter set sub-routines: the sequenceparameter set sub-routine and the picture parameter set sub-routine, twounique start codes are used: sequence parameter set start code andpicture parameter set start code. Each of these start codes must bedifferent from any other start code, including the bitstream end code.

The first embodiment of the present invention is depicted as follows:video_bitstream( ) {   next_start_code( )   do {     if( the followingis a sequence parameter set start code ) {       sequence_parameter_set()     }     if( the following is a picture parameter set start code ) {      picture_parameter_set( )     }     if( the following is a picturestart code ) {        picture_header( )       do {         slice_header()         slice_data( )         next_start_code( )       } while( thefollowing is a slice start code )     }   } while( the following is nota bitstream end code ) } sequence_parameter_set( ) {  sequence_parameter_set_start_code   sequence_parameter_set_id  sequence_parameter#1   sequence_parameter#2   ...   next_start_code( )} picture_parameter_set( ) {   picture_parameter_set_start_code  picture_parameter_set_id   sequence_parameter_set_id  picture_parameter#1   picture_parameter#2   ...   next_start_code( ) }picture_header( ) {   picture_start_code   picture_parameter_set_id  picture_header_parameter#1   picture_header_parameter#2   ...  next_start_code( ) } slice_header( ) {   slice_start_code  picture_parameter_set_id   slice_header_parameter#1  slice_header_parameter#2   ...   next_start_code( ) }According to the first embodiment:

1) It is also possible to allow in the above tables the presence of atleast one sequence parameter set or picture parameter set before a sliceheader.

2) The information in picture header (picture_header_parameter#1, #2, .. . ) is unchanged for decoding of the entire picture, and changesrelatively frequently (e.g. to be changed for each picture) compared tothe information in picture parameter set (pictureparameter#1, #2, . . .).

3) The picture_parameter_set_id code is included in both the pictureheader and the slice header. However, it is also possible to exclude thepicture_parameter_set_id code from the picture header if parsing ofpicture header parameters does not need the information in the pictureparameter set. It is also possible to exclude thepicture_parameter_set_id code from the slice header if all the slices ina picture must use the same picture parameter set.

4) Sequence header is not present because all the information thatshould be in the sequence header is already contained in the sequenceparameter set. However, it is also possible to allow the presence of asequence header to contain some sequence level parameters that arechanged relatively frequently (e.g. to be changed for each sequence). Ifthe sequence header is present, the sequence start code is needed as thefirst parameter in the sequence header. In this case, it is alsopossible to allow the presence of at least one sequence parameter set orpicture parameter set before a picture header.

SECOND EMBODIMENT

The second embodiment of the present invention uses the parameter setsub-routine and the picture header sub-routine simultaneously in the NALunit plus parameter set bitstream structure. The simultaneous use of theparameter set sub-routine and the picture header sub-routine in thestart code plus parameter set bitstream structure can be achieved byemploying an H.264/AVC Annex B or similar coder, according to the secondembodiment of the present invention.

To realize the second embodiment of the current invention, a new NALunit type for the picture header is needed. This new picture headertable is placed before the slice header table as shown below:sequence_parameter_set_NAL_unit( ) {   nal_unit_header  sequence_parameter_set_id   sequence_parameter#1  sequence_parameter#2   ... } picture_parameter_set_NAL_unit( ) {  nal_unit_header   picture_parameter_set_id   sequence_parameter_set_id  picture_parameter#1   picture_parameter#2   ... }picture_header_NAL_unit ( ) {   nal_unit_header  picture_parameter_set_id   picture_header_parameter#1  picture_header_parameter#2   ... } slice_NAL_unit( ) {  nal_unit_header   slice_header( )   slice_data( ) } slice_header( ) {  picture_parameter_set_id   slice_header_parameter#1  slice_header_parameter#2   ... }According to the second embodiment of the present invention:

1) The picture header NAL unit precedes all the slice NAL unitsbelonging to the same picture.

2) The picture header information (picture_header_parameter#1, #2, . . .) is unchanged during the decoding of the entire picture, and changesrelatively frequently (e.g. to be changed for each picture) compared tothe information in the picture parameter set (picture_parameter#1, #2, .. . ).

3) It is also possible to optionally include the picture headerinformation in a slice in order to improve error resilience if thepicture NAL unit is subject to transmission errors.

4) The picture_parameter_set_id code is included in both the pictureheader and the slice header. However, it is also possible to exclude thepicture_parameter_set_id code from the picture header if parsing ofpicture header parameters does not need the information in the pictureparameter set. It is also possible to exclude thepicture_parameter_set_id code from the slice header if all the slices ina picture must use the same picture parameter set.

5) The sequence header is not present because all the information thatshould be in sequence header is already contained in the sequenceparameter set. However, it is also possible to allow the presence of asequence header containing some sequence level parameters that areconsidered to be changed relatively frequently (e.g. to be changed foreach sequence). If the sequence header is present, another NAL unit typefor the sequence header is needed.

According to the second embodiment of the present invention, it ispossible to optionally include the picture header information(picture_header_parameter#1, #2, . . . ) in each slice header instead ofhaving picture header NAL units.

In sum, in the video coding method, according to the present invention,one or more parameter set sub-routines are used simultaneously with thepicture header sub-routine in the bitstream structure. The bitstreamstructure can be a start code based bitstream structure or a NAL unitplus parameter set bitstream structure. If the bitstream is a start codebased bitstream structure, one or more parameter set start codes areused to support the respective parameter set routines. If the bitstreamis a NAL unit plus parameter set bitstream structure, a new NAL unit forthe picture header is needed and/or the picture header parameters can beoptionally included in a slice header. The new picture header is usedtogether with other NAL units but prior to any slice NAL unit in thesame picture. The parameter set based structure, whether based on startcodes or NAL units, is shown in FIG. 3 according to the layer hierarchyin a video bitstream. In contrast to the conventional parameter setbased structure as shown in FIG. 1, picture header is present in thepicture layer, according to the present invention. In FIG. 1 and FIG. 3,MB stands for microblock.

The method of video coding, according to the present invention, can beimplemented in a video coding system, as shown in FIG. 4. As shown inFIG. 4, the video coding system 1 comprises a transmitting device 20having an encoder 30 operatively connected to a transmitter 40. Theencoder 30 receives pictures to be encoded in a video stream from avideo source 10, such as a camera, a video recorder, etc. The pictures(frames) of the video stream can be divided into smaller portions suchas slices. The slices can further be divided into macroblocks (MBs) orblocks. The encoder 30 selects proper parameter sets for use with theencoding process and provides the selected parameter sets to the decoder80 via a transmitter 40, through a channel 50 and a receiver 70. Thedecoder 80, as shown in FIG. 4, is part of a receiver system, which alsoincludes a display device 90. The video data sent to the decoder is in aform of bitstream having a plurality of structural layers including asequence layer, a picture layer and a slice layer in a layer hierarchy.The bitstream has a parameter set based structure, which includes theselected parameter sets. The parameter set based structure also includesa plurality of sub-structures representative of the structural layers,wherein one of the structural layers is representative of a picture inthe picture layer. According to the present invention, the structurallayer representative of a picture in the picture layer comprises aplurality of slices in the slice layer, and a picture header in thepicture layer preceding the plurality of slices. After the video data inthe bitstream is decoded, the decoded video data can be displayed on thedisplay device 90.

The encoder 30 has an encoding buffer 330, as shown in FIG. 5, fortemporarily storing some of the pictures to be encoded. The encoder 30also includes a memory 310 and a processor 320, which receives theoriginal video sequence 302 to be encoded. The memory 310 includes asoftware program 312 having executable codes for generating theparameter sets and the picture header to be included in the picturelayer. The processor 320 carries out the encoding task according to thepresent invention. The memory 310 and the processor 320 can be commonwith or operatively connected to the transmitting device 30. From theencoding process carried out by the processor 320, the encoded picturesare moved to an encoded picture buffer 340, if necessary. The encodedpictures 342 are transmitted from the encoder 30 to the decoder 80.

In the receive side, as shown in FIG. 6, encoded pictures 802 receivedin a processor 810 are decoded to form uncompressed picturescorresponding as much as possible to the encoded pictures. The decodedpicture can be buffered in the decoding buffer 832 in a RAM 830, whichis part of a memory device 820. The decoder 80 also includes a softwareprogram 842 embedded in a ROM 840 for using the parameter sets and thepicture header in the picture layer in the decoding process carried outby the processor 810.

The encoder 30 and the decoder 80, according to the present invention,can be used in an electronic device, such as a mobile terminal. As shownin FIG. 7, the electronic device 100 has a CPU 120 for data and signalprocessing. The CPU 120 includes an encoder 30 and a decoder 80,operatively connected to a RF front-end for receiving video data fromone or more network components in a communications network, and fortransmitting video data to one or more network components in thecommunications network. The electronic device 100 may include a camera130 for providing pictures to be encoded, and a display 160 fordisplayed decoded pictures. The memory device 110, as shown in FIG. 7,can be used for picture buffer and encoding buffer. The software 112 caninclude the encoder software program 312 (see FIG. 5) and the decodersoftware program 842 (see FIG. 6). The electronic device may alsoinclude an audio output device 152 and an audio input device 154,operatively connected to the CPU 120 through an audio processor 150. Thesoftware 112 can be embedded in a storage medium in a chipset, forexample.

It should be noted that the present invention can be extended to anystart code based bitstream structure by introducing one or moreparameter sets in the structure while keeping the picture header.According to the present invention, two parameter sets are used:sequence parameter set and picture parameter set. However, the number ofparameter sets is not necessarily to be two. In general, the number ofparameter sets is N, wherein N is a positive integer. For example, anadditional set, such as slice parameter set, can also be used.

Regarding the parameter set based structure in a video bitstream asshown in FIG. 3, it is possible to optionally include picture headerparameters in one or more slice headers of the picture, as shown in FIG.8 a. Moreover, it is also possible to include the picture headerparameters in at least one slice header and optionally in the otherslice headers indicated by a flag, as shown in FIG. 8 b.

Thus, although the invention has been described with respect to one ormore embodiments thereof, it will be understood by those skilled in theart that the foregoing and various other changes, omissions anddeviations in the form and detail thereof may be made without departingfrom the scope of this invention.

1. A method of video coding for providing a bitstream of video data, thebitstream having a plurality of structural layers including a sequencelayer, a picture layer and a slice layer in a layer hierarchy, thebitstream further having a structure including a plurality ofsub-structures representative of the structural layers, wherein thesub-structure representative of a picture in the picture layer comprisesa plurality of slices in the slice layer, said method comprising:providing information associated with the picture layer, informationassociated with the structural layer below the picture layer in thelayer hierarchy, and information associated with a plurality ofparameter sets.
 2. The method of claim 1, wherein the informationassociated with the picture layer comprises a picture header in thepicture, and the information associated with the structural layer belowthe picture layer comprises a slice header in at least one of theplurality of slices in the picture.
 3. The method of claim 1, whereinthe video coding includes a plurality of start codes in the bitstream.4. The method of claim 2, wherein the bitstream comprises one or morepicture header parameters in the slice header.
 5. The method of claim 1,wherein the parameter sets further comprise at least one sequenceparameter set and at least one picture parameter set.
 6. The method ofclaim 4, wherein the video data comprises a plurality of NetworkAbstraction Layer (NAL) units including a picture header NAL unit and aslice NAL unit, and wherein the information associated with the picturelayer comprises at least the picture header parameters in the pictureheader NAL unit, and the information associated with the structurallayer below the picture layer comprises at least a slice header in theslice NAL unit.
 7. The method of claim 6, wherein the picture headercomprises a picture parameter set identifier for decoding of thepicture.
 8. The method of claim 7, wherein a unique NAL unit type isused to identify the picture header NAL unit.
 9. An encoder for use invideo coding, comprising: a first means, responsive to a video sequence,for providing a bitstream of video data based on the video sequence, thebitstream having a plurality of structural layers including a sequencelayer, a picture layer and a slice layer in a layer hierarchy, thebitstream further having a structure including a plurality ofsub-structures representative of the structural layers, wherein thesub-structure representative of a picture in the picture layer comprisesa plurality of slices in the slice layer; and a second means, forproviding first information associated with the picture layer, secondinformation associated with the structural layer below the picture layerin the layer hierarchy and third information associated with a pluralityof parameter sets.
 10. The encoder of claim 9, wherein the firstinformation comprises a picture header in the picture and the secondinformation comprises a slice header in at least one of the plurality ofslices in the picture.
 11. The encoder of claim 10, wherein the videocoding includes a plurality of start codes in the bitstream.
 12. Theencoder of claim 10, wherein the bitstream comprises one or more pictureheader parameters in the slice header.
 13. The encoder of claim 10,wherein the parameter sets further comprise at least one sequenceparameter set and at least one picture parameter set.
 14. The encoder ofclaim 12, wherein the video data comprises a plurality of NetworkAbstraction Layer (NAL) units including a picture header NAL unit and aslice NAL unit, and wherein the first information comprises at least thepicture header parameters in the picture header NAL unit, and the secondinformation comprises at least a slice header in the slice NAL unit. 15.The encoder of claim 14, wherein the picture header comprises a pictureparameter set identifier for decoding of the picture.
 16. The encoder ofclaim 15, wherein a unique NAL unit type is used to identify the pictureheader NAL unit.
 17. A decoder for use in video coding, comprising: afirst means for receiving a bitstream of video data, the bitstreamhaving a plurality of structural layers including a sequence layer, apicture layer and a slice layer in a layer hierarchy, the bitstreamfurther having a structure including a plurality of sub-structuresrepresentative of the structural layers, wherein the sub-structurerepresentative of a picture in the picture layer comprises a pluralityof slices in the slice layer, and wherein the bitstream further havingfirst information associated with the picture layer, and secondinformation associated with the structural layer below the picture layerin the layer hierarchy, and wherein the bitstream further having a thirdinformation associated with a plurality of parameter sets; and a secondmeans, responsive to the bitstream, for providing an uncompressed videosequence based on the first information, the second information and thethird information in decoding.
 18. The decoder of claim 17, wherein thefirst information comprises a picture header in the picture, and thesecond information comprises a slice header in at least one of theplurality of slices in the picture.
 19. The decoder of claim 17, whereinthe second means uses a start code for decoding.
 20. The decoder ofclaim 18, wherein the bitstream comprises one or more picture headerparameters in the slice header.
 21. The decoder of claim 17, wherein theparameter sets further comprise at least one sequence parameter set andat least one picture parameter set.
 22. The decoder of claim 20, whereinthe video data comprises a plurality of Network Abstraction Layer (NAL)units including a picture header NAL unit and a slice NAL unit, andwherein the first information comprises at least the picture headerparameters in the picture header NAL unit, and the second informationcomprises at least a slice header in the slice NAL unit.
 23. The decoderof claim 22, wherein the picture header comprises a picture parameterset identifier for decoding of the picture.
 24. The decoder of claim 23,wherein a unique NAL unit type is used to identify the picture headerNAL unit.
 25. An software application product comprising a storagemedium having a software application for use in video coding of abitstream of video data, the bitstream having a plurality of structurallayers including a sequence layer, a picture layer and a slice layer ina layer hierarchy, the bitstream further having a structure including aplurality of sub-structures representative of the structural layers,wherein the sub-structure representative of a picture in the picturelayer comprises a plurality of slices in the slice layer, and thebitstream further having a plurality of parameter sets, said softwareapplication comprising: program code for providing first informationassociated with the picture layer; program code for providing secondinformation associated with the structural layer below the picture layerin the layer hierarchy; and program code for providing thirdinformation.
 26. The software application product of claim 25, whereinthe first information comprises a picture header in the picture, and thesecond information comprises a slice header in at least one of theplurality of slices in the picture.
 27. The software application productof claim 25, wherein the bitstream comprises a plurality of start codes.28. The software application product of claim 26, wherein the bitstreamcomprises one or more picture header parameters in the slice header. 29.The software application product of claim 25, wherein the parameter setsfurther comprise at least one sequence parameter set and at least onepicture parameter set.
 30. The software application product of claim 28,wherein the video data comprises a plurality of Network AbstractionLayer (NAL) units including a picture header NAL unit and a slice NALunit, and wherein the first information comprises at least the pictureheader parameters in the picture header NAL unit, and the secondinformation comprises at least a slice header in the slice NAL unit. 31.The software application product of claim 30, wherein the picture headercomprises a picture parameter set identifier for decoding the picture.32. The software application product of claim 31, wherein a unique NALunit type is used to identify the picture header NAL unit.
 33. Thesoftware application product of claim 25, comprising a chipset forimplementing the storage medium.
 34. An electronic device comprising: anencoder for use in video coding, responsive to a video sequence, forproviding a bitstream of video data based on the video sequence, thebitstream having a plurality of structural layers including a sequencelayer, a picture layer and a slice layer in a layer hierarchy, thebitstream further having a structure including a plurality ofsub-structures representative of the structural layers, wherein thesub-structure representative of a picture in the picture layer comprisesa plurality of slices in the slice layer; and wherein the bitstreamfurther comprises first information associated with the picture layer,second information associated with the structural layer below thepicture layer in the layer hierarchy, and third information associatedwith a plurality of parameter sets; and a transmitter for transmittingthe bitstream through a channel.
 35. The electronic device of claim 34,wherein the first information comprises a picture header in the pictureand the second information comprises a slice header in at least one ofthe plurality of slices in the picture.
 36. The electronic device ofclaim 34, wherein the video coding uses a start code in the bitstream.37. The electronic device of claim 35, wherein the bitstream comprisesone or more picture header parameters in the slice header.
 38. Theelectronic device of claim 34, wherein the parameter sets furthercomprise at least one sequence parameter set and at least one pictureparameter set.
 39. The electronic device of claim 37, wherein the videodata comprises a plurality of Network Abstraction Layer (NAL) unitsincluding a picture header NAL unit and a slice NAL unit, and whereinthe first information comprises at least the picture header parametersin the picture header NAL unit, and the second information comprises atleast a slice header in the slice NAL unit.
 40. The electronic device ofclaim 39, wherein the picture header comprises a picture parameter setidentifier for decoding the picture.
 41. The electronic device of claim40, wherein a unique NAL unit type is used to identify the pictureheader NAL unit.
 42. An electronic device comprising: a receiver,adapted to receive a bitstream of video data; and a decoder, responsiveto the received bitstream, for providing a video sequence, wherein thereceived bitstream having a plurality of structural layers including asequence layer, a picture layer and a slice layer in a layer hierarchy,the received bitstream further having a structure including a pluralityof sub-structures representative of the structural layers, wherein thesub-structure representative of a picture in the picture layer comprisesa plurality of slices in the slice layer, and wherein the receivedbitstream further having first information associated with the picturelayer, second information associated with the structural layer below thepicture layer in the layer hierarchy, and third information associatedwith a plurality of parameter sets, and wherein the video sequence isbased the first and second information.
 43. The electronic device ofclaim 42, wherein the first information comprises a picture header inthe picture, and the second information comprises a slice header in atleast one of the plurality of slices in the picture.
 44. The electronicdevice of claim 42, wherein the video coding includes a plurality ofstart code in the bitstream.
 45. The electronic device of claim 43,wherein the bitstream comprises one or more picture header parameters inthe slice header.
 46. The electronic device of claim 42, wherein theparameter sets further comprise at least one sequence parameter set andat least one picture parameter set.
 47. The electronic device of claim45, wherein the video data comprises a plurality of Network AbstractionLayer (NAL) units including a picture header NAL unit and a slice NALunit, and wherein the first information comprises at least the pictureheader parameters in the picture header NAL unit, and the secondinformation comprises at least a slice header in the slice NAL unit. 48.The electronic device of claim 47, wherein the picture header comprisesa picture parameter set identifier for decoding the picture.
 49. Theelectronic device of claim 48, wherein a unique NAL unit type is used toidentify the picture header NAL unit.